#include "ICoreImp.h"

ICoreImp::ICoreImp()
{
	//TODO:
}
ICoreImp::~ICoreImp()
{
	//TODO:
}

ICore& ICore::GetInstance()
{
	static ICoreImp ICoreImpObj;
	return ICoreImpObj;
}
bool ICoreImp::Initialize()
{
	//TODO:
	if(!IPlatform::GetInstance().Initialize())return false;
	if(!IRenderDrivce::GetInstance().Initialize())return false;
	if(!IGameApp::GetInstance().Initialize())return false;
	
	return true;

}
void ICoreImp::Terminate()
{
	//TODO:
	
	IRenderDrivce::GetInstance().Terminate();
	IPlatform::GetInstance().Terminate();
	IGameApp::GetInstance().Terminate();

}

void ICoreImp::Updata(float dt)
{
	//TODO:
	IGameApp::GetInstance().Updata(dt);
}
void ICoreImp::PrvRender()
{
	//TODO:
	IRenderDrivce::GetInstance().BeginRender();
}

void ICoreImp::Render()
{
	//TODO:
	IGameApp::GetInstance().Render();
}

void ICoreImp::EndRender()
{
	IRenderDrivce::GetInstance().EndRender();
	//TODO:
}
